home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / listings / v_13_03 / saks / maxlen.cpp < prev    next >
Encoding:
C/C++ Source or Header  |  1995-01-04  |  791 b   |  33 lines

  1. Listing 6 - A maxlen function intended for both arrays of 
  2. constant strings and arrays of non-constant strings.
  3.  
  4. #include <iostream.h>
  5. #include <string.h>
  6.  
  7. #define DIM(a) (sizeof(a)/sizeof(a[0]))
  8.  
  9. char *quintet[] =
  10.     { "flute", "oboe", "horn", "clarinet", "bassoon" };
  11. const char *quartet[] =
  12.     { "violin", "violin", "viola", "cello" };
  13. const char *trio[] =
  14.     { "washtub", "jaw harp", "kazoo" };
  15.  
  16. size_t maxlen(const char *const *t, size_t n)
  17.     {
  18.     size_t len = 0;
  19.     size_t sl = 0;
  20.     size_t i;
  21.     for (i = 0; i < n; ++i)
  22.         if ((sl = strlen(t[i])) > len)
  23.             len = sl;
  24.     return len;
  25.     }
  26.  
  27. int main()
  28.     {
  29.     cout << maxlen(quintet, DIM(quintet)) << endl;
  30.     cout << maxlen(quartet, DIM(quartet)) << endl;
  31.     return 0;
  32.     }
  33.